/*
 * Powered By [Seven]
 * Since 2016 - 2019
 */


package com.czmh.etc.onlinepubsys.model;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

public class EtcVehiclelicense extends BaseModel {
	
	//alias
	public static final String TABLE_ALIAS = "EtcVehiclelicense";
	public static final String ALIAS_ID = "主键ID";
	public static final String ALIAS_PLATE_NUM = "车牌号码";
	public static final String ALIAS_VEHICLE_TYPE = "车辆类型";
	public static final String ALIAS_OWNER = "所有人名称";
	public static final String ALIAS_USE_CHARACTER = "使用性质";
	public static final String ALIAS_ADDR = "地址";
	public static final String ALIAS_MODEL = "品牌型号";
	public static final String ALIAS_VIN = "车辆识别代号";
	public static final String ALIAS_ENGINE_NUM = "发动机号码";
	public static final String ALIAS_REGISTER_DATE = "注册日期";
	public static final String ALIAS_ISSUE_DATE = "发证日期";
	public static final String ALIAS_APPPROVED_PASSENGER_CAPACITY = "核定载人数";
	public static final String ALIAS_APPROVED_LOAD = "核定载质量";
	public static final String ALIAS_FILE_NO = "档案编号";
	public static final String ALIAS_GROSS_MASS = "总质量";
	public static final String ALIAS_INSPECTION_RECORD = "检验记录";
	public static final String ALIAS_OVERALL_DIMENSION = "外廓尺寸";
	public static final String ALIAS_TRACTION_MASS = "准牵引总质量";
	public static final String ALIAS_UNLADEN_MASS = "整备质量";
	public static final String ALIAS_CAR_ID = "车辆id";
	 
	//可以直接使用: @Length(max=50,message="用户名长度不能大于50")显示错误消息
	//columns START
	private java.lang.String id;
	private java.lang.String plate_num;
	private java.lang.String vehicle_type;
	private java.lang.String owner;
	private java.lang.String use_character;
	private java.lang.String addr;
	private java.lang.String model;
	private java.lang.String vin;
	private java.lang.String engine_num;
	private java.lang.String register_date;
	private java.lang.String issue_date;
	private java.lang.String appproved_passenger_capacity;
	private java.lang.String approved_load;
	private java.lang.String file_no;
	private java.lang.String gross_mass;
	private java.lang.String inspection_record;
	private java.lang.String overall_dimension;
	private java.lang.String traction_mass;
	private java.lang.String unladen_mass;
	private java.lang.String car_id;
	//columns END

	public EtcVehiclelicense(){
	}

	public EtcVehiclelicense(
		java.lang.String id
	){
		this.id = id;
	}

	/**  
	 * 设置主键ID  
	 * @param id 主键ID  
	 */  
	public void setId(java.lang.String id) {
		this.id = id;
	}
	
	/**  
	 * 获取主键ID   
	 * @return id 主键ID   
	 */
	public java.lang.String getId() {
		return this.id;
	}
	/**  
	 * 设置车牌号码  
	 * @param plate_num 车牌号码  
	 */  
	public void setPlate_num(java.lang.String plate_num) {
		this.plate_num = plate_num;
	}
	
	/**  
	 * 获取车牌号码   
	 * @return plate_num 车牌号码   
	 */
	public java.lang.String getPlate_num() {
		return this.plate_num;
	}
	/**  
	 * 设置车辆类型  
	 * @param vehicle_type 车辆类型  
	 */  
	public void setVehicle_type(java.lang.String vehicle_type) {
		this.vehicle_type = vehicle_type;
	}
	
	/**  
	 * 获取车辆类型   
	 * @return vehicle_type 车辆类型   
	 */
	public java.lang.String getVehicle_type() {
		return this.vehicle_type;
	}
	/**  
	 * 设置所有人名称  
	 * @param owner 所有人名称  
	 */  
	public void setOwner(java.lang.String owner) {
		this.owner = owner;
	}
	
	/**  
	 * 获取所有人名称   
	 * @return owner 所有人名称   
	 */
	public java.lang.String getOwner() {
		return this.owner;
	}
	/**  
	 * 设置使用性质  
	 * @param use_character 使用性质  
	 */  
	public void setUse_character(java.lang.String use_character) {
		this.use_character = use_character;
	}
	
	/**  
	 * 获取使用性质   
	 * @return use_character 使用性质   
	 */
	public java.lang.String getUse_character() {
		return this.use_character;
	}
	/**  
	 * 设置地址  
	 * @param addr 地址  
	 */  
	public void setAddr(java.lang.String addr) {
		this.addr = addr;
	}
	
	/**  
	 * 获取地址   
	 * @return addr 地址   
	 */
	public java.lang.String getAddr() {
		return this.addr;
	}
	/**  
	 * 设置品牌型号  
	 * @param model 品牌型号  
	 */  
	public void setModel(java.lang.String model) {
		this.model = model;
	}
	
	/**  
	 * 获取品牌型号   
	 * @return model 品牌型号   
	 */
	public java.lang.String getModel() {
		return this.model;
	}
	/**  
	 * 设置车辆识别代号  
	 * @param vin 车辆识别代号  
	 */  
	public void setVin(java.lang.String vin) {
		this.vin = vin;
	}
	
	/**  
	 * 获取车辆识别代号   
	 * @return vin 车辆识别代号   
	 */
	public java.lang.String getVin() {
		return this.vin;
	}
	/**  
	 * 设置发动机号码  
	 * @param engine_num 发动机号码  
	 */  
	public void setEngine_num(java.lang.String engine_num) {
		this.engine_num = engine_num;
	}
	
	/**  
	 * 获取发动机号码   
	 * @return engine_num 发动机号码   
	 */
	public java.lang.String getEngine_num() {
		return this.engine_num;
	}
	/**  
	 * 设置注册日期  
	 * @param register_date 注册日期  
	 */  
	public void setRegister_date(java.lang.String register_date) {
		this.register_date = register_date;
	}
	
	/**  
	 * 获取注册日期   
	 * @return register_date 注册日期   
	 */
	public java.lang.String getRegister_date() {
		return this.register_date;
	}
	/**  
	 * 设置发证日期  
	 * @param issue_date 发证日期  
	 */  
	public void setIssue_date(java.lang.String issue_date) {
		this.issue_date = issue_date;
	}
	
	/**  
	 * 获取发证日期   
	 * @return issue_date 发证日期   
	 */
	public java.lang.String getIssue_date() {
		return this.issue_date;
	}
	/**  
	 * 设置核定载人数  
	 * @param appproved_passenger_capacity 核定载人数  
	 */  
	public void setAppproved_passenger_capacity(java.lang.String appproved_passenger_capacity) {
		this.appproved_passenger_capacity = appproved_passenger_capacity;
	}
	
	/**  
	 * 获取核定载人数   
	 * @return appproved_passenger_capacity 核定载人数   
	 */
	public java.lang.String getAppproved_passenger_capacity() {
		return this.appproved_passenger_capacity;
	}
	/**  
	 * 设置核定载质量  
	 * @param approved_load 核定载质量  
	 */  
	public void setApproved_load(java.lang.String approved_load) {
		this.approved_load = approved_load;
	}
	
	/**  
	 * 获取核定载质量   
	 * @return approved_load 核定载质量   
	 */
	public java.lang.String getApproved_load() {
		return this.approved_load;
	}
	/**  
	 * 设置档案编号  
	 * @param file_no 档案编号  
	 */  
	public void setFile_no(java.lang.String file_no) {
		this.file_no = file_no;
	}
	
	/**  
	 * 获取档案编号   
	 * @return file_no 档案编号   
	 */
	public java.lang.String getFile_no() {
		return this.file_no;
	}
	/**  
	 * 设置总质量  
	 * @param gross_mass 总质量  
	 */  
	public void setGross_mass(java.lang.String gross_mass) {
		this.gross_mass = gross_mass;
	}
	
	/**  
	 * 获取总质量   
	 * @return gross_mass 总质量   
	 */
	public java.lang.String getGross_mass() {
		return this.gross_mass;
	}
	/**  
	 * 设置检验记录  
	 * @param inspection_record 检验记录  
	 */  
	public void setInspection_record(java.lang.String inspection_record) {
		this.inspection_record = inspection_record;
	}
	
	/**  
	 * 获取检验记录   
	 * @return inspection_record 检验记录   
	 */
	public java.lang.String getInspection_record() {
		return this.inspection_record;
	}
	/**  
	 * 设置外廓尺寸  
	 * @param overall_dimension 外廓尺寸  
	 */  
	public void setOverall_dimension(java.lang.String overall_dimension) {
		this.overall_dimension = overall_dimension;
	}
	
	/**  
	 * 获取外廓尺寸   
	 * @return overall_dimension 外廓尺寸   
	 */
	public java.lang.String getOverall_dimension() {
		return this.overall_dimension;
	}
	/**  
	 * 设置准牵引总质量  
	 * @param traction_mass 准牵引总质量  
	 */  
	public void setTraction_mass(java.lang.String traction_mass) {
		this.traction_mass = traction_mass;
	}
	
	/**  
	 * 获取准牵引总质量   
	 * @return traction_mass 准牵引总质量   
	 */
	public java.lang.String getTraction_mass() {
		return this.traction_mass;
	}
	/**  
	 * 设置整备质量  
	 * @param unladen_mass 整备质量  
	 */  
	public void setUnladen_mass(java.lang.String unladen_mass) {
		this.unladen_mass = unladen_mass;
	}
	
	/**  
	 * 获取整备质量   
	 * @return unladen_mass 整备质量   
	 */
	public java.lang.String getUnladen_mass() {
		return this.unladen_mass;
	}
	/**  
	 * 设置车辆id  
	 * @param car_id 车辆id  
	 */  
	public void setCar_id(java.lang.String car_id) {
		this.car_id = car_id;
	}
	
	/**  
	 * 获取车辆id   
	 * @return car_id 车辆id   
	 */
	public java.lang.String getCar_id() {
		return this.car_id;
	}
	
	private EtcCar etcCar;
	
	public void setEtcCar(EtcCar etcCar){
		this.etcCar = etcCar;
	}
	
	public EtcCar getEtcCar() {
		return etcCar;
	}

	@Override
    public String toString() {
		return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
			.append("id",getId())
			.append("plate_num",getPlate_num())
			.append("vehicle_type",getVehicle_type())
			.append("owner",getOwner())
			.append("use_character",getUse_character())
			.append("addr",getAddr())
			.append("model",getModel())
			.append("vin",getVin())
			.append("engine_num",getEngine_num())
			.append("register_date",getRegister_date())
			.append("issue_date",getIssue_date())
			.append("appproved_passenger_capacity",getAppproved_passenger_capacity())
			.append("approved_load",getApproved_load())
			.append("file_no",getFile_no())
			.append("gross_mass",getGross_mass())
			.append("inspection_record",getInspection_record())
			.append("overall_dimension",getOverall_dimension())
			.append("traction_mass",getTraction_mass())
			.append("unladen_mass",getUnladen_mass())
			.append("car_id",getCar_id())
			.toString();
	}
	
	@Override
    public int hashCode() {
		return new HashCodeBuilder()
			.append(getId())
			.toHashCode();
	}
	
	@Override
    public boolean equals(Object obj) {
		if(obj instanceof EtcVehiclelicense == false) {
			return false;
		}
		if(this == obj) {
			return true;
		}
		EtcVehiclelicense other = (EtcVehiclelicense)obj;
		return new EqualsBuilder()
			.append(getId(),other.getId())
			.isEquals();
	}
}

